perm filename KI.SAI[1,ALS] blob
sn#090760 filedate 1974-03-13 generic text, type T, neo UTF8
00100 BEGIN "KI"
00200 DEFINE ⊂="COMMENT",CR="'15",LF="'12", CRLF="CR&LF";
00300 ⊂ The master control program for the KI KA KU system. This program
00400 calls on various subroutines to perform the required functions of
00500 a simple speech communication system which can converse with a speaker
00600 after a minimum amount of adaptive learning in a very simple code
00700 involving the principle vowel sounds pronounced following the stop
00800 consonant "K". The hope is that the system can operate over the
00900 telephone in a reasonably noisy environment with a group of perhaps 100
01000 different speakers;
01100
01200 REQUIRE "KISAY.REL[KI,ALS]" LOAD_MODULE;
01300 REQUIRE "KIHEAR.REL[KI,ALS]" LOAD_MODULE;
01400 EXTERNAL PROCEDURE SAYIT(STRING UTTER);
01500 EXTERNAL STRING PROCEDURE HEARIT(STRING EH);
01600
01700 PROCEDURE SAY(STRING UTTER);
01800 BEGIN
01900
01910 FOR I←0 STEP 1 UNTIL 10 DO IF UTTER=UTTERN[I] THEN DONE;
01920 FILEN←UTTER&".SAY[KI,ALS];
02000 CLOSE(CHAN1); OPEN(CHAN1,"DSK",0,1,0,10,BRCHR,EOF);
02100 LOOKUP(CHAN1,FILEN,ER);
02200 OUTSTR("FILE IS OPEN"&CRLF);
02300 OUTSTR("ER CONTAINS "&COS(ER)&CRLF);
02400 IF ER THEN BEGIN
02500 OUTSTR("File "&FILEN&" is supposed to say ");
02550 for i←0 step 1 until 10 do
02600 READ←INCHWL;
02700 IF READ="" THEN PP←1 ELSE PP←CVD(READ);
02800 END ELSE BEGIN
02900 PP←CVD(INPUT(CHAN1,1));
03000 ⊂ RENAME(CHAN1,NULL,0,0);
03100 OUTSTR("PP= "&CVS(PP)&CRLF);
03200 CLOSE(CHAN1);
03300 END;
03400 OUTSTR("READY TO CALL FMAIN(PP)"&CRLF);
03500 ⊂ PTOSTR(0,"K"&CRLF);
03600 START_CODE '047000400037; MOVEM 0,SEGNAM; '047040400017; END;
03700 FMAIN(PP);
03800 END;
03900
04000
04100
04200 LABEL STARTP;
04300
04400 CHAN1←1;
04500 STDBRK(1);
04600 STARTP:
04700 SAYIT("HELLO");
04800 IF HEARIT("YES")="YES" THEN OLD ELSE NEW;